#ifndef XSTRUCT_TYPE_PROVIDER_HPP
#define XSTRUCT_TYPE_PROVIDER_HPP

/****************************************************************************/
/* TYPE_PROVIDER (models) */
/****************************************************************************/
struct DefaultTypeProvider
{
	template<class FIELD_TAG>
	struct Field
	{
		typedef typename FIELD_TAG::DefaultType Type;
	};
};

template<class T>
struct SimpleTypeProvider
{
	template<class FIELD_TAG>
	struct Field
	{
		typedef T Type;
	};
};

#endif
